package com.godpaper.twoHitOne.model
{
	import de.polygonal.ds.Array2;

	public class BoardModel
	{
		// Singleton instance of BoardModel
		private static var instance:BoardModel;
		public function BoardModel(access:Private)
		{
			if (access != null){
				if (instance == null)
				{				
					instance = this;
				}
			}
			else{
				throw new Error( "BoardModel.SINGLETON_EXCEPTION", "@BoardModel" );
			}
		}
		
		/**
		 * 
		 * @return the Singleton instance of BoardModel
		 * 
		 */		
		public static function getInstance():BoardModel
		{
			if(instance == null)
			{
				instance = new BoardModel(new Private());
			}
			return instance;
		}
		
//--------------------------------------------------------------------------
//
//  Variables
//
//--------------------------------------------------------------------------			
		[Bindable]public var gamePosition:Array2 = new Array2(4,4);//mapping table(point,array)
		[Bindable]public var WITH_DEBUG:Boolean = false;//indicate whether this game with debug func.
		[Bindable]public var gasketsPosition:Array2 = new Array2(4,4);//mapping the table and gasketsButton position;
	}
}
/**
 * Inner class which restricts contructor access to Private
 */
class Private 
{
	
}